﻿using System;
using System.Collections.Generic;
namespace CoreSoft.Frame.Entity
{

    [Serializable]
    /// <summary>
    /// 采购入库单 
    /// 数据表:transferheader
    /// </summary>
    public class Transferheader
    {
        #region 构造函数
        public Transferheader()
        {
        }
        #endregion
        
        #region 表字段
        /// <summary>
        /// 主键
        /// </summary>
        public String Id
        {
            get;
            set;
        }
        
        /// <summary>
        /// 调拨单号
        /// </summary>
        public String TransferCode
        {
            get;
            set;
        }
        
        /// <summary>
        /// 调拨部门编号
        /// </summary>
        public String DeptCode
        {
            get;
            set;
        }
        
        /// <summary>
        /// 调拨人员编号
        /// </summary>
        public String UserCode
        {
            get;
            set;
        }
        
        /// <summary>
        /// 调出仓库编号
        /// </summary>
        public String OutWhoCode
        {
            get;
            set;
        }
        
        /// <summary>
        /// 调入仓库编号
        /// </summary>
        public String InWhoCode
        {
            get;
            set;
        }
        
        /// <summary>
        /// 调出出库类别编号
        /// </summary>
        public String OutRdClassCode
        {
            get;
            set;
        }
        
        /// <summary>
        /// 调入出库类别编号
        /// </summary>
        public String InRdClassCode
        {
            get;
            set;
        }
        
        /// <summary>
        /// 单据时间
        /// </summary>
        public DateTime TransferDate
        {
            get;
            set;
        }
        
        /// <summary>
        /// 币种
        /// </summary>
        public String Bz
        {
            get;
            set;
        }
        
        /// <summary>
        /// 汇率
        /// </summary>
        public Single ExchangeRate
        {
            get;
            set;
        }
        
        /// <summary>
        /// 税率
        /// </summary>
        public Single TaxRate
        {
            get;
            set;
        }
        
        /// <summary>
        /// 状态（0 开立 1审核 2 导入ERP）
        /// </summary>
        public Int32 Status
        {
            get;
            set;
        }
        
        /// <summary>
        /// 备注
        /// </summary>
        public String CMemo
        {
            get;
            set;
        }
        
        /// <summary>
        /// 组织ID
        /// </summary>
        public String OrgID
        {
            get;
            set;
        }
        
        /// <summary>
        /// 创建人ID
        /// </summary>
        public String CUserID
        {
            get;
            set;
        }
        
        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime CTime
        {
            get;
            set;
        }
        
        /// <summary>
        /// 修改人ID
        /// </summary>
        public String MUserID
        {
            get;
            set;
        }
        
        /// <summary>
        /// 修改时间
        /// </summary>
        public DateTime? MTime
        {
            get;
            set;
        }
        
        /// <summary>
        /// 审核人
        /// </summary>
        public String AUserID
        {
            get;
            set;
        }
        
        /// <summary>
        /// 审核时间
        /// </summary>
        public DateTime? ATime
        {
            get;
            set;
        }
        
        /// <summary>
        /// ERP返回拒收单号
        /// </summary>
        public String ERPArrCode
        {
            get;
            set;
        }
        
        /// <summary>
        /// 导入ERP人
        /// </summary>
        public String InputUserID
        {
            get;
            set;
        }
        
        /// <summary>
        /// 导入时间
        /// </summary>
        public DateTime? InputTime
        {
            get;
            set;
        }
        public string InWhoName { get; set; }
        public string OutWhoName { get; set; }
        public string InRdClassName { get; set; }
        public string OutRdClassName { get; set; }
        public string DeptName { get; set; }
        public string UserName { get; set; }

        #endregion
        #region 验证字段是否可以为空
        public List<string> Validation()
        {
            List<string> vMsgList=new List<string>();
            
                    if(Id==null){
                          vMsgList.Add("主键不可以为空！");
                    }
                    else{
                        if(Id.ToString().Trim()=="")
                        {
                              vMsgList.Add("主键不可以为空！");
                        }
                    }
                 
                    if(TransferCode==null){
                          vMsgList.Add("调拨单号不可以为空！");
                    }
                    else{
                        if(TransferCode.ToString().Trim()=="")
                        {
                              vMsgList.Add("调拨单号不可以为空！");
                        }
                    }
                 
                    if(DeptCode==null){
                          vMsgList.Add("调拨部门编号不可以为空！");
                    }
                    else{
                        if(DeptCode.ToString().Trim()=="")
                        {
                              vMsgList.Add("调拨部门编号不可以为空！");
                        }
                    }
                 
                    if(UserCode==null){
                          vMsgList.Add("调拨人员编号不可以为空！");
                    }
                    else{
                        if(UserCode.ToString().Trim()=="")
                        {
                              vMsgList.Add("调拨人员编号不可以为空！");
                        }
                    }
                 
                    if(OutWhoCode==null){
                          vMsgList.Add("调出仓库编号不可以为空！");
                    }
                    else{
                        if(OutWhoCode.ToString().Trim()=="")
                        {
                              vMsgList.Add("调出仓库编号不可以为空！");
                        }
                    }
                 
                    if(InWhoCode==null){
                          vMsgList.Add("调入仓库编号不可以为空！");
                    }
                    else{
                        if(InWhoCode.ToString().Trim()=="")
                        {
                              vMsgList.Add("调入仓库编号不可以为空！");
                        }
                    }
                 
                    if(OutRdClassCode==null){
                          vMsgList.Add("调出出库类别编号不可以为空！");
                    }
                    else{
                        if(OutRdClassCode.ToString().Trim()=="")
                        {
                              vMsgList.Add("调出出库类别编号不可以为空！");
                        }
                    }
                 
                    if(InRdClassCode==null){
                          vMsgList.Add("调入出库类别编号不可以为空！");
                    }
                    else{
                        if(InRdClassCode.ToString().Trim()=="")
                        {
                              vMsgList.Add("调入出库类别编号不可以为空！");
                        }
                    }
                 
                    if(TransferDate==null){
                          vMsgList.Add("单据时间不可以为空！");
                    }
                    else{
                        if(TransferDate.ToString().Trim()=="")
                        {
                              vMsgList.Add("单据时间不可以为空！");
                        }
                    }
                 
                    if(Status==null){
                          vMsgList.Add("状态（0 开立 1审核 2 导入ERP）不可以为空！");
                    }
                    else{
                        if(Status.ToString().Trim()=="")
                        {
                              vMsgList.Add("状态（0 开立 1审核 2 导入ERP）不可以为空！");
                        }
                    }
                 
                    if(OrgID==null){
                          vMsgList.Add("组织ID不可以为空！");
                    }
                    else{
                        if(OrgID.ToString().Trim()=="")
                        {
                              vMsgList.Add("组织ID不可以为空！");
                        }
                    }
                 
                    if(CUserID==null){
                          vMsgList.Add("创建人ID不可以为空！");
                    }
                    else{
                        if(CUserID.ToString().Trim()=="")
                        {
                              vMsgList.Add("创建人ID不可以为空！");
                        }
                    }
                 
                    if(CTime==null){
                          vMsgList.Add("创建时间不可以为空！");
                    }
                    else{
                        if(CTime.ToString().Trim()=="")
                        {
                              vMsgList.Add("创建时间不可以为空！");
                        }
                    }
                 
            return vMsgList;
        }
        
        
        #endregion
    }
}